Towards Kleene Algebra with Recursion
نویسنده
چکیده
We extend Kozen’s theory KA of Kleene Algebra to axiomatize parts of the equational theory of context-free languages, using a least fixed-point operator μ instead of Kleene’s iteration operator ∗. Although the equational theory of context-free languages is not recursively axiomatizable, there are natural axioms for subtheories KAF ⊆ KAR ⊆ KAG: respectively, these make μ a least fixed point operator, connect it with recursion, and express S. Greibach’s method to replace leftby right-recursion and vice versa. Over KAF , there are different candidates to define ∗ in terms of μ, such as tail-recursion and reflexive transitive closure. In KAR, these candidates collapse, whence KAR uniquely defines ∗ and extends Kozen’s theory KA. We show that a model M = (M,+, 0, ·, 1, μ) of KAF is a model of KAG, whenever the partial order ≤ on M induced by + is complete, and + and · are Scott-continuous with respect to ≤. The family of all context-free languages over an alphabet of size n is the free structure for the class of submodels of continuous models of KAF in n generators.
منابع مشابه
Program Construction and Verification Components Based on Kleene Algebra
Variants of Kleene algebra support program construction and verification by algebraic reasoning. This entry provides a verification component for Hoare logic based on Kleene algebra with tests, verification components for weakest preconditions and strongest postconditions based on Kleene algebra with domain and a component for step-wise refinement based on refinement Kleene algebra with tests. ...
متن کاملwp is wlp
Using only a simple transition relation one cannot model commands that may or may not terminate in a given state. In a more general approach commands are relations enriched with termination vectors. We reconstruct this model in modal Kleene algebra. This links the recursive definition of the do od loop with a combination of the Kleene star and a convergence operator. Moreover, the standard wp o...
متن کاملModal Kleene Algebra Applied to Program Correctness
Modal Kleene algebras are relatives of dynamic logics that support program construction and verification by equational reasoning. We describe their application in implementing versatile program correctness components in interactive theorem provers such as Isabelle/HOL. Starting from a weakest precondition based component with a simple relational store model, we show how variants for Hoare logic...
متن کاملNormal design algebra
We generalise the designs of the Unifying Theories of Programming (UTP) by defining them as matrices over semirings with ideals. This clarifies the algebraic structure of designs and considerably simplifies reasoning about them, for example, since they form a Kleene and omega algebra and a test semiring. We apply our framework to investigate symmetric linear recursion and its relation to tail-r...
متن کاملInfinitary Axiomatization of the Equational Theory of Context-Free Languages
Algebraic reasoning about programming language constructs has been a popular research topic for many years. At the propositional level, the theory of flowchart programs and linear recursion are well handled by such systems as Kleene algebra and iteration theories, systems that characterize the equational theory of the regular sets. To handle more general forms of recursion including procedures ...
متن کامل